package com.ly.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ly.common.core.bean.vo.DictVO;
import com.ly.system.system.bean.dto.FieldCheckDTO;
import com.ly.system.system.bean.entity.SysDict;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 字典-mapper
 *
 * @author jeecg
 * @since 2018-12-28
 */
public interface SysDictMapper extends BaseMapper<SysDict> {

    /**
     * 重复检查SQL
     *
     * @param dto
     * @return
     */
    @Deprecated
    Long duplicateCheckCountSql(@Param("dto") FieldCheckDTO dto);

    /**
     * 通过字典code获取字典数据
     *
     * @param code 字典code
     * @return List<DictVO>
     */
    List<DictVO> queryDictItemsByCode(@Param("code") String code);

    /**
     * 通过字典code获取字典数据
     *
     * @param code
     * @param key
     * @return
     */
    String queryDictTextByKey(@Param("code") String code, @Param("key") String key);

    /**
     * 查询系统所有字典项
     *
     * @return
     */
    List<DictVO> queryAllDictItems(List<Integer> tenantIdList);

    /**
     * 查询 字典表数据 支持查询条件 查询所有
     *
     * @param table
     * @param text
     * @param code
     * @param filterSql
     * @return
     */
    @Deprecated
    List<DictVO> queryTableDictWithFilter(@Param("table") String table, @Param("text") String text, @Param("code") String code, @Param("filterSql") String filterSql);

}
